[Ajuda] Falha de Segmentacao

1. [Ajuda] Falha de Segmentacao

Guilherme Gomes
gpgomes

(usa Debian)

Enviado em 02/02/2012 - 16:52h

Ola! Estou tentando implementar uma lista encadeada, e estou apenas começando, mas quando fui testar o que já fiz ocorreu falha de segmentação e não estou sabendo resolver o problema, agradeço qualquer ajuda.

Ai vai o código



#include <stdio.h>
#include <stdlib.h>

struct dado{
int numero;
struct dado *prox;
};


struct dado *aloca(){
return malloc (sizeof (struct dado));
};

void addItem(struct dado *inicio){
struct dado *aux, *novo;
aux = inicio;
while (aux->prox != NULL){ aux = aux->prox;}
novo = aloca();
printf("Insira o numero: ");
scanf("%d",novo->numero);
novo->prox=NULL;
aux->prox=novo;
}

void imprime(struct dado *inicio){
struct dado *atual = NULL;
atual = inicio;
do{
atual=atual->prox;
printf("\n\n Dado: %d",atual->numero);
}
while(atual->prox!=NULL);
}

int main(){
struct dado datum;
datum.prox=NULL;
addItem(&datum);
imprime(&datum);
return 0;
}




  


2. Re: [Ajuda] Falha de Segmentacao

Bruno Rogério Fernandes
brunorf

(usa Arch Linux)

Enviado em 07/04/2012 - 10:06h

No momento de ler os dados você cometeu um pequeno deslize.

Substitua

scanf("%d", novo->numero);


por

scanf("%d", &novo->numero);


Lembre-se sempre de usar o GDB.

Abraços!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts